package com.novanok.mailtweets;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageView;

import com.novanok.mailtweets.adapter.ListaMensajeDirectoAdapter;
import com.novanok.mailtweets.comun.Comun;
import com.novanok.mailtweets.comun.TwitterUtil;
import com.novanok.mailtweets.entidad.Cuenta;
import com.novanok.mailtweets.mensaje.Mensaje;

import java.util.Map;

import twitter4j.TwitterException;
import twitter4j.User;

/**
 * Created by Marcos on 13/10/2014.
 */
public class ActivityCuentaItem extends Activity {

    private Map<String, Cuenta> cuentas;
    private String accion;

    @Override
    protected void onCreate( Bundle savedInstanceState ) {
        super.onCreate( savedInstanceState );
        setContentView( R.layout.activity_cuenta_item);

        this.cuentas = MyActivity.getCuentas();
        this.accion = getIntent().getStringExtra("palabra_accion");
    }


    @Override
    public boolean onCreateOptionsMenu( Menu menu ) {
        getMenuInflater().inflate( R.menu.menu_cuenta_item, menu );
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch ( item.getItemId() ) {
            case R.id.aceptar_cuenta_item:
                this.aceptar();
                return true;

            case R.id.cancelar_cuenta_item:
                this.cancelar();
                return true;

            default:
                return super.onOptionsItemSelected(item);
        }
    }

    public void buscar( View v ){
        String descripcion = (( EditText )findViewById( R.id.txtDescripcion )).getText().toString();

        if ( descripcion.compareTo("") != 0 ) {

            try {

                User usuario = TwitterUtil.getInstance().getTwitter().lookupUsers( new String[]{ descripcion } ).get( 0 );

                if ( usuario != null ) {
                    ImageView img = (ImageView)findViewById(R.id.imgPerfil);
                    ImageView imgBanner = (ImageView)findViewById(R.id.imgBanner);

                    img.setImageBitmap(Comun.getBitmapFromURL(usuario.getBiggerProfileImageURL()));
                    imgBanner.setImageBitmap(Comun.getBitmapFromURL(usuario.getProfileBannerURL()));
                }
            } catch (TwitterException e) {
                e.printStackTrace();
            }


        } else {
            Mensaje.getMensaje().mostrarInformacion(this, "El Nombre no puede quedar vacio");
        }
    }

    public void aceptar (){
        String descripcion = (( EditText )findViewById( R.id.txtDescripcion )).getText().toString();

        if ( descripcion.compareTo("") != 0 ) {

            try {

                User usuario = TwitterUtil.getInstance().getTwitter().lookupUsers( new String[]{ descripcion } ).get( 0 );

                if ( usuario != null ) {
                    Cuenta c = new Cuenta( String.valueOf( usuario.getId() ), usuario.getScreenName(), usuario.getDescription(), usuario.getProfileImageURL() );

                    this.cuentas.put(c.getId(), c);

                    finish();
                }
            } catch (TwitterException e) {
                e.printStackTrace();
            }


        } else {
            Mensaje.getMensaje().mostrarInformacion(this, "El Nombre no puede quedar vacio");
        }
    }

    public void cancelar (){
        finish();
    }
}
